// 处理业务逻辑的中间件，读取某个json文件的数据，响应给前端
// ctx上下文，next调用下一中间件
const path = require('path')
const fileUtils  = require('../utils/file_utils')
module.exports =async (ctx,next) => {
    // 根据url
    const url =  ctx.request.url //打印出端口后的url
    console.log(url);
    let filePath = url.replace('/api','') //  /seller
    filePath = '../data' + filePath + '.json'
      // __dirname当前文件所在路径
      filePath =  path.join(__dirname,filePath)
      // 这里的getFileJsonData得到的是一个promise的对象，需要用async和await
    try {
        const ret = await fileUtils.getFileJsonData(filePath)
        ctx.response.body = ret
    } catch (error) {
        const errorMsg = {
            message: '读取文件内容不存在，文件资源不存在',
            status: 404
        }
        ctx.response.body = JSON.stringify(errorMsg)
    }
  
  
    console.log(filePath);
    await next()
}